import { RoleEnum } from '@/role'
import { stores } from '@/stores'

/**
 * 根据不同的角色，来使用不同的名称
 * @description
 * 部级中心、技术方：使用角色名称(role_info.name)
 * 机构、省级中心、市级中心：使用机构名称(organ_info.name)
 * 学生、教师：使用用户名称
 */
const useShowName = () => {
    const { getRoleInfo, getUserInfo, getOrganInfo } = stores.userStore

    const nameMap: Record<RoleEnum, string | undefined> = {
        [RoleEnum.admin]: getRoleInfo?.name,
        [RoleEnum.center]: getRoleInfo?.name,

        [RoleEnum.student]: getUserInfo?.realname,
        [RoleEnum.teacher]: getUserInfo?.realname,
        [RoleEnum.tutor]: getUserInfo?.realname,

        [RoleEnum.province]: getOrganInfo?.name,
        [RoleEnum.city]: getOrganInfo?.name,
        [RoleEnum.trainerOrgan]: getOrganInfo?.name,
        [RoleEnum.trainerCompany]: getOrganInfo?.name,
        [RoleEnum.company]: getOrganInfo?.name,
    }

    const showName = getRoleInfo?.role_id ? nameMap[getRoleInfo.role_id] : '匿名用户'
    return { showName }
}

export default useShowName
